In the Introduction to Test, it was stated that there is much more to testing software than testing only the functions, interface, and response time characteristics of a target-of-test. Additional tests must focus on characteristics / attributes such as the target-of-test's:

  • integrity (resistance to failure)
  • ability to be installed / executed on different platforms
  • ability to handle many requests simultaneously
  • ...

In order to achieve this, many different tests are implemented and executed, each with a specific test objective. Each focused on testing only one characteristic or attribute of the target-of-test.

Often individual tests are categorized, implemented, and executed in groups, most commonly arranged by similarities in their test objectives or the quality dimension (see Concepts: Quality Dimension) they address, such as:

Quality Dimension Type of Test

 

 
Reliability
  • Integrity test: Tests which focus on assessing the target-of-test's robustness (resistance to failure) and technical compliance to language, syntax, and resource usage. This test is implemented and executed against different target-of-tests, including units and integrated units.
  • Structure test: Tests that focus on assessing the target-of-test's adherence to its design and formation. Typically, this test is done for web-enabled applications ensuring that all links are connected, appropriate content is displayed, and there is no orphaned content. See Concepts: Structure Test for additional information.
Function
  • Configuration test: Tests focused on ensuring the target-of-test functions as intended on different hardware and / or software configurations. This test may also be implemented as a system performance test.
  • Function test: Tests focused on verifying the target-of-test functions as intended, providing the required service(s), method(s), or use case(s). This test is implemented and executed against different target-of-tests, including units, integrated units, application(s), and systems.
  • Installation test: Tests focused on ensuring the target-of-test installs as intended on different hardware and / or software configurations and under different conditions (such as insufficient disk space or power interrupt). This test is implemented and executed against application(s) and systems.
  • Security test: Tests focused on ensuring the target-of-test, data, (or systems) is accessible to only those actors intended. This test is implemented and executed various targets-of-test.
  • Volume test: Testing focused on verifying the target-of-test ability to handle large amounts of data, either as input and output or resident within the database. Volume testing includes test strategies such as creating queries that [would] return the entire contents of the database, or have so many restrictions that no data is returned, or data entry of the maximum amount of data in each field.
Performance

See Concepts: Performance Testing for additional information

  • Benchmark test: A type of performance test that compares the performance of a [new or unknown] target-of-test to a known, reference-workload and system.
  • Contention test: Tests focused on verifying the target-of-test's can acceptably handle multiple actor demands on the same resource (data records, memory, etc.).
  • Load test: A type of performance test to verify and assess acceptability of the operational limits of a system under varying workloads while the system-under-test remains constant. Measurements include the characteristics of the workload and response time. When systems incorporate distributed architectures or load balancing, special tests are performed to ensure the distribution and load balancing methods function appropriately.
  • Performance profile: A test in which the target-of-test's timing profile is monitored, including execution flow, data access, function and system calls to identify and address performance bottlenecks and inefficient processes.
  • Stress test: A type of performance test that focuses on ensuring the system functions as intended when abnormal conditions are encountered. Stresses on the system may include extreme workloads, insufficient memory, unavailable services / hardware, or diminished shared resources.

 

To top of page



Copyright  ⌐ 1987 - 2000 Rational Software Corporation

Display Rational Unified Process using frames

Rational Unified Process